#ifndef CCALLTERMINATOR_H
#define CCALLTERMINATOR_H

#include <Etel3rdParty.h>

class MTerminatorObserver
{
public:
    virtual void CallTerminatedL( TInt aError ) = 0;
    virtual void CallRejectedL( TInt aError ) = 0;
};

class CCallTerminator: public CActive
{
public:
    CCallTerminator(MTerminatorObserver&, CTelephony*);
    ~CCallTerminator();

    void Terminate();
    void Reject();

private:
    void RunL();
    void DoCancel();

private:
    MTerminatorObserver&            iObserver;
    CTelephony*                     iTelephony;
    CTelephony::TCallId             iCallId;
};

#endif // CCALLTERMINATOR_H
